import argparse

def get_options(parser=argparse.ArgumentParser()):
    parser.add_argument('--workers', type=int, default=4, help='number of data loading workers')
    parser.add_argument('--batch_size', type=int, default=32, help='batch size, default=32')
    parser.add_argument('--input_size', type=int, default=14, help='input size, default=15')
    parser.add_argument('--hidden_size', type=int, default=64, help='hidden size, default=64')
    parser.add_argument('--data_dir', type=str, default=r'D:\Dev\TORCHPRACTICE\assignment1\dataset\bili1.xlsx', help='data directory, default=./dataset')
    parser.add_argument('--niter', type=int, default=10, help='number of epochs to train for, default=10')
    parser.add_argument('--lr', type=float, default=2e-3, help='learning rate, default=2e-3')
    parser.add_argument('--dropout_rate', type=float, default=1e-2, help='dropout rate, default=1e-2')
    parser.add_argument('--seed', type=int, default=42, help='random seed')
    parser.add_argument('--device', type=str, default='cuda', help='device, default=cuda')
    parser.add_argument('--checkpoint_path', type=str, default=r'D:\Dev\TORCHPRACTICE\assignment1\checkpoints', help='checkpoint path, default=None')
    parser.add_argument('--output', action='store_true', default=True, help='show output, default=True')
   
    opt = parser.parse_args()
    return opt